package com.yuexunit.finance.project.entity.lexicon;

/**
 * <pre>
 *  枚举参考类 API 工作流节点类型
 * </pre>
 *
 * @since JDK1.6
 */
public enum ApiFinanceStateEnum {
	/**
	 * 业务部
	 **/
	YW(1l,"业务部"),
	
	/**
	 * 复核业务部
	 **/
	RYW(17l,"业务部"),
	
	/**
	 * 业务部领导
	 **/
	YWMANAGE(2l,"业务领导"),
	 
	/**
	 *风控部
	 **/
	FK(3l,"风控部"),
	
	/**
	 *复核风控部
	 **/
	RFK(18l,"风控部"),
	 
	/**
	 *风控部领导
	 **/
	FKMANAGE(4l,"风控领导"),
	
	/**
	 *运营部
	 **/
	YY(5l,"运营部"),
	 
	/**
	 *运营领导
	 **/
	YYMANAGE(6l,"运营领导"),
	
	/**
	 *法务部
	 **/
	FW(7l,"法务部"),
	 
//	/**
//	 *法务部领导
//	 **/
//	FWMANAGE(8l,"法务部领导"),
	
	/**
	 *资金部
	 **/
	ZJ(9l,"资金部"),
	 
	/**
	 *资金部领导
	 **/
	ZJMANAGE(10l,"资金领导"),
	
	/**
	 *董事长
	 **/
	ZXMANAGE(11l,"董事长"),
	 
	/**
	 *总经理
	 **/
	TMANAGE(12l,"总经理"),
	
	/**
	 *实习生
	 **/
	SXS(13l,"实习生"),
	
	/**
	 * 已完成
	 * */
	FINISHED(14l,"已完成"),
	 
	/**
	 * 融资初审完成
	 * */
	CSWC(15l,"融资初审完成"),
	
	/**
	 * 业务副总
	 * */
	YWFZ(21L, "业务副总"),
	
	/**
	 * 副总经理
	 * */
	FMANAGE(20L, "副总经理"),
	
	/**
	 * 业务总监
	 * */
	YWZJ(19L, "业务总监"),
	
	/**
	 * 固定额度调整  复核市场&财务&运营   并行流程
	 * */
	SCCWYY(22l,"复核市场&财务&运营"),
	
	/**
	 * 固定额度调整  复核市场&财务   并行流程
	 * */
	SCCW(16l,"复核市场&财务"),
	
	/**
	 * 固定额度调整  复核市场&运营   并行流程
	 * */
	SCYY(23l,"复核市场&运营"),
	
	/**
	 * 固定额度调整  财务&运营   并行流程
	 * */
	CWYY(24l,"财务&运营"),
	
	/**
	 * 商务部
	 * */
	SW(25l, "商务部"),
	
	/**
	 * 商务领导
	 * */
	SWMANAGE(26l, "商务部领导");
	
    private Long code;
    private String view;

    private ApiFinanceStateEnum(Long code, String view) {
        this.code = code;
        this.view = view;
    }

    public String getView() {
		return view;
	}

	/**
     * @return the code
     */
    public Long getCode() {
        return code;
    }
    
    public static ApiFinanceStateEnum getByValue(Long value) {
    	for(ApiFinanceStateEnum en: ApiFinanceStateEnum.values()) {
    		if(en.getCode() == value){
    			return en;
    		}
    	}
    	return null;
    }

    public static ApiFinanceStateEnum getByView(String value) {
        for(ApiFinanceStateEnum en: ApiFinanceStateEnum.values()) {
            if(en.getView().equals(value)) {
                return en;
            }
        }
        return null;
    }
}
